package db


// 新建日志
func (m *MysqlStruct) NewUploadLog(r *UploadLog) error {
	//tx := m.Db.Begin()
	tx := m.Db
	if err := tx.Create(&r).Error;err!=nil{
		//tx.Rollback()
		return err
	}
	//tx.Commit()
	return nil
}

// 更新状态
func (m *MysqlStruct) UpdateLogByFilename(filename ,hostname  string ,updates map[string]interface{}) error {
	//db := m.Db.Begin()
	db := m.Db
	obj := UploadLog{}
	if err := db.Model(obj).Where("file_name = ? and hostname = ?",filename,hostname).Updates(updates).Error;err != nil{
		//db.Rollback()
		return err
	}
	//db.Commit()
	return nil
}

// 查询
func (m *MysqlStruct)PageGetLog(pageSize,pageNum int ,j *[]UploadLog)  error {
	//tx := m.Db.Begin()
	db := m.Db
	return db.Model(&UploadLog{}).Order("updated_at DESC").Limit(pageSize).Offset((pageNum-1)*pageSize).Find(j).Error
}

// 查看是否存在此文件的记录
func (m *MysqlStruct)GetLogByFilename(filename string ,log *UploadLog)  error {
	//tx := m.Db.Begin()
	db := m.Db
	return db.Model(&UploadLog{}).Where("file_name = ?", filename).Limit(1).Find(&log).Error
}